{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "af709f2f-9c40-4f61-be6f-85e4f8d64ae0",
   "metadata": {},
   "source": [
    "# 第二章 PyTorch与数学基础"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "803e97f9-0c9e-4f37-8721-3f670f94dc9b",
   "metadata": {},
   "source": [
    "## 2.1　PyTorch中的函数"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b66602e1-2332-42d3-9393-0c4e6693f96a",
   "metadata": {},
   "source": [
    "### 2.1.2　PyTorch中的主要函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "0db06a3d-a3f9-4f2d-b99b-347c4aed53ca",
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "c70a47e8-7410-4c4a-8861-8f8951299102",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "3027047487569900"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.seed()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "9901669b-0ab9-4ce8-8b1e-f8cb81aa00f4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<torch._C.Generator at 0x26fa51382d0>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.manual_seed(1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "ad1b2cc3-f074-48f3-99cf-e8646f4982c0",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.initial_seed()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "26f222b0-1bf7-4ce4-8aca-d9f8873260c2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([1, 0, 0,  ..., 0, 0, 0], dtype=torch.uint8)"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.get_rng_state()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "be806c13-ac9d-45f7-8963-7306d36b712a",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([1, 0, 0,  ..., 0, 0, 0], dtype=torch.uint8)\n",
      "tensor([2, 0, 0,  ..., 0, 0, 0], dtype=torch.uint8)\n"
     ]
    }
   ],
   "source": [
    "rng_state1=torch.get_rng_state()\n",
    "print(rng_state1)\n",
    "torch.set_rng_state(rng_state1*2)\n",
    "rng_state2=torch.get_rng_state()\n",
    "print(rng_state2)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "870faab6-770a-405f-9a7a-bbab67c43b70",
   "metadata": {},
   "source": [
    "## 2.2　微分基础"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8320a8f6-1b74-4110-8254-209938aa0199",
   "metadata": {},
   "source": [
    "### 2.2.2　PyTorch自动微分"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "3ae75946-decf-4f40-91da-4cafd3a5d91f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([5.])\n"
     ]
    }
   ],
   "source": [
    "import torch\n",
    "w=torch.tensor([1.],requires_grad=True)\n",
    "x=torch.tensor([2.],requires_grad=True)\n",
    "a=torch.add(x,w)\n",
    "b=torch.add(w,1)\n",
    "y=torch.mul(a,b)\n",
    "y.backward()\n",
    "print(w.grad)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e2f863d5-8414-48a3-adf0-6e4d3ea77985",
   "metadata": {},
   "source": [
    "### grad_tensors参数的用法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "e3e8e168-da78-44cf-9568-8f16b3ce1cd2",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([9.])\n"
     ]
    }
   ],
   "source": [
    "import torch\n",
    "w=torch.tensor([1.],requires_grad=True)\n",
    "x=torch.tensor([2.],requires_grad=True)\n",
    "a=torch.add(x,w)\n",
    "b=torch.add(w,1)\n",
    "y0=torch.mul(a,b)\n",
    "y1=torch.add(a,b)\n",
    "loss=torch.cat([y0,y1],dim=0)\n",
    "grad_t=torch.tensor([1.,2.])\n",
    "loss.backward(gradient=grad_t)\n",
    "print(w.grad)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "74c6a170-b53d-4fc4-8156-a830015d25eb",
   "metadata": {},
   "source": [
    "### torch.autograd.grad()该函数实现求取梯度"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "dbb69be6-45e6-4636-a0f7-d0ea4992015a",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(tensor([6.], grad_fn=<MulBackward0>),)\n",
      "(tensor([2.]),)\n"
     ]
    }
   ],
   "source": [
    "import torch\n",
    "x=torch.tensor([3.],requires_grad=True)\n",
    "y=torch.pow(x,2)\n",
    "grad1=torch.autograd.grad(y,x,create_graph=True)\n",
    "print(grad1)\n",
    "grad2=torch.autograd.grad(grad1[0],x)\n",
    "print(grad2)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5bb9c8fb-cf90-4b7c-bc83-c88e46fe4071",
   "metadata": {},
   "source": [
    "### 梯度不能自动清零，在每次反向传播中会叠加"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "ad0ebcfe-c6d3-4c98-bc12-372dc42ace3b",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([5.])\n",
      "tensor([10.])\n",
      "tensor([15.])\n"
     ]
    }
   ],
   "source": [
    "w=torch.tensor([1.],requires_grad=True)\n",
    "x=torch.tensor([2.],requires_grad=True)\n",
    "for i in range(3):\n",
    "    a=torch.add(x,w)\n",
    "    b=torch.add(w,1)\n",
    "    y=torch.mul(a,b)\n",
    "    y.backward()\n",
    "    print(w.grad)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "123ffdd4-9959-4187-8531-9a8c6e17a533",
   "metadata": {},
   "source": [
    "### 这会导致我们得不到正确的结果，所以需要手动清零，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "94215ee3-86af-4bf6-a025-8557598ea3b0",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([5.])\n",
      "tensor([5.])\n",
      "tensor([5.])\n"
     ]
    }
   ],
   "source": [
    "w=torch.tensor([1.],requires_grad=True)\n",
    "x=torch.tensor([2.],requires_grad=True)\n",
    "for i in range(3):\n",
    "    a=torch.add(x,w)\n",
    "    b=torch.add(w,1)\n",
    "    y=torch.mul(a,b)\n",
    "    y.backward()\n",
    "    print(w.grad)\n",
    "    w.grad.zero_() # 梯度清零"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "59d7ff7d-af3f-41d3-b34c-5c5e7f466af3",
   "metadata": {},
   "source": [
    "### 依赖于叶子节点的节点，requires_grad默认为True"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "5e8626b7-9383-40a5-95bd-c8083479797c",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "True True True\n"
     ]
    }
   ],
   "source": [
    "w=torch.tensor([1.],requires_grad=True)\n",
    "x=torch.tensor([2.],requires_grad=True)\n",
    "a=torch.add(x,w)\n",
    "b=torch.add(w,1)\n",
    "y=torch.mul(a,b)\n",
    "print(a.requires_grad,b.requires_grad,y.requires_grad)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7f1c46fa-8b14-43b1-a843-27a9178988d1",
   "metadata": {},
   "source": [
    "#### 叶子节点不可以执行in-place，因为前向传播记录了叶子节点的地址，反向传播需要用到叶子节点的数据时，要根据地址寻找数据，执行in-place操作改变了地址中的数据，梯度求解也会发生错误，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "a52b14ba-8f28-48e4-96d7-277081fd2a13",
   "metadata": {},
   "outputs": [
    {
     "ename": "RuntimeError",
     "evalue": "a leaf Variable that requires grad is being used in an in-place operation.",
     "output_type": "error",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mRuntimeError\u001b[0m                              Traceback (most recent call last)",
      "Cell \u001b[1;32mIn[2], line 6\u001b[0m\n\u001b[0;32m      4\u001b[0m b\u001b[38;5;241m=\u001b[39mtorch\u001b[38;5;241m.\u001b[39madd(w,\u001b[38;5;241m1\u001b[39m)\n\u001b[0;32m      5\u001b[0m y\u001b[38;5;241m=\u001b[39mtorch\u001b[38;5;241m.\u001b[39mmul(a,b)\n\u001b[1;32m----> 6\u001b[0m \u001b[43mw\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43madd_\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m)\u001b[49m\n",
      "\u001b[1;31mRuntimeError\u001b[0m: a leaf Variable that requires grad is being used in an in-place operation."
     ]
    }
   ],
   "source": [
    "w=torch.tensor([1.],requires_grad=True)\n",
    "x=torch.tensor([2.],requires_grad=True)\n",
    "a=torch.add(x,w)\n",
    "b=torch.add(w,1)\n",
    "y=torch.mul(a,b)\n",
    "w.add_(1)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a6c27f12-0932-4688-90c7-cc033857d19a",
   "metadata": {},
   "source": [
    "#### in-place操作即原位操作，在原始内存中改变这个数据，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "e967b03b-d6ab-44bd-80d1-97cecda3e9fe",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2170818339264 tensor([1])\n"
     ]
    }
   ],
   "source": [
    "a=torch.tensor([1])\n",
    "print(id(a),a)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "621539b6-ecdd-4cad-83fa-2f62536145b1",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2170823971440 tensor([2])\n"
     ]
    }
   ],
   "source": [
    "#开辟新的内存地址\n",
    "a=a+torch.tensor([1])\n",
    "print(id(a),a)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "c22e3512-92e8-442b-8920-8f53eba8807e",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2170823971440 tensor([3])\n"
     ]
    }
   ],
   "source": [
    "#in-place操作，地址不变\n",
    "a+=torch.tensor([1])\n",
    "print(id(a),a)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "27318aea-cb57-4510-963a-eb8cf789f0bc",
   "metadata": {},
   "source": [
    "## 2.3　数理统计基础"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2c77d543-93f8-408f-8167-7bd378276aab",
   "metadata": {},
   "source": [
    "### 2.3.2　PyTorch统计函数"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9fb33287-9346-4cbb-99bf-c3acd79aa9ea",
   "metadata": {},
   "source": [
    "#### torch.prob()函数返回所有元素的积，用法如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "1a1468a1-4233-453e-96fc-c70f582c7d0d",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(3)\n"
     ]
    }
   ],
   "source": [
    "print(torch.prod(a))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5d2590c9-1882-4ccb-a205-420b428003e5",
   "metadata": {},
   "source": [
    "#### torch.sum()函数对输入的tensor数据的某一维度求和，一共有两种用法，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "3557214d-663b-43dc-8005-14e3bf44ec46",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[0.1586, 0.3247],\n",
      "        [0.2825, 0.9181]])\n"
     ]
    }
   ],
   "source": [
    "import torch\n",
    "a=torch.rand(2,2)\n",
    "print(a)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8136478b-5ce3-438f-aa5f-378173696669",
   "metadata": {},
   "source": [
    "#### 设置参数input和dim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "2940e9fb-a399-4566-a23c-596d10f360d4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(1.6838)\n",
      "tensor(1.6838)\n",
      "tensor([0.4411, 1.2427])\n",
      "tensor([0.4832, 1.2005])\n"
     ]
    }
   ],
   "source": [
    "a1=torch.sum(a)\n",
    "a2=torch.sum(a,dim=(0,1))\n",
    "a3=torch.sum(a,dim=0)\n",
    "a4=torch.sum(a,dim=1)\n",
    "print(a1)\n",
    "print(a2)\n",
    "print(a3)\n",
    "print(a4)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d4f266c5-aa7c-4f10-b0c4-90c7b7224e8a",
   "metadata": {},
   "source": [
    "#### 设置参数keepdim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "1a4694b5-e022-4437-9862-5f8f5eed3afd",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[1.6838]])\n",
      "tensor([[0.4411, 1.2427]])\n",
      "tensor([[0.4832],\n",
      "        [1.2005]])\n"
     ]
    }
   ],
   "source": [
    "a5=torch.sum(a,dim=(0,1),keepdim=True)\n",
    "a6=torch.sum(a,dim=(0,),keepdim=True)\n",
    "a7=torch.sum(a,dim=(1,),keepdim=True)\n",
    "print(a5)\n",
    "print(a6)\n",
    "print(a7)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c1b8e5b2-0fc6-40be-b628-4e7b8b154de0",
   "metadata": {},
   "source": [
    "#### 3．平均值"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "881ce3c3-d753-4624-8cf5-52018a1ce63f",
   "metadata": {},
   "source": [
    "#### torch.mean()函数对输入的tensor数据的某一维度求平均值，参数与torch.sum()函数类似，也有两种用法："
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e2cdefd2-ee84-4841-ae03-d93fc04a90dd",
   "metadata": {},
   "source": [
    "#### 设置参数input和dim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "b625a635-2ada-4bf5-83b0-cff3c22562c0",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(0.4209)\n",
      "tensor(0.4209)\n",
      "tensor([0.2205, 0.6214])\n",
      "tensor([0.2416, 0.6003])\n"
     ]
    }
   ],
   "source": [
    "a8=torch.mean(a)\n",
    "a9=torch.mean(a,dim=(0,1))\n",
    "a10=torch.mean(a,dim=0)\n",
    "a11=torch.mean(a,dim=1)\n",
    "print(a8)\n",
    "print(a9)\n",
    "print(a10)\n",
    "print(a11)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1f3b5e3a-aa5f-4e9d-930a-51fde43d3821",
   "metadata": {},
   "source": [
    "#### 设置参数keepdim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "a0a9c35f-45e4-471c-b707-597da3a9c8e9",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[0.4209]])\n",
      "tensor([[0.2205, 0.6214]])\n",
      "tensor([[0.2416],\n",
      "        [0.6003]])\n"
     ]
    }
   ],
   "source": [
    "a12=torch.mean(a,dim=(0,1),keepdim=True)\n",
    "a13=torch.mean(a,dim=(0,),keepdim=True)\n",
    "a14=torch.mean(a,dim=(1,),keepdim=True)\n",
    "print(a12)\n",
    "print(a13)\n",
    "print(a14)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5fccd3bf-e01e-4280-a241-f8b686d5469e",
   "metadata": {},
   "source": [
    "### 4．最大值"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6bbe13d1-7b42-4641-be7d-a8b3d4e7b52b",
   "metadata": {},
   "source": [
    "#### torch.max()函数返回最大值，参数与torch.sum()函数类似，但是参数dim需要是整数，也有两种用法，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "cae68a09-7103-4365-8b14-4e76142b5782",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(0.9181)\n",
      "torch.return_types.max(\n",
      "values=tensor([0.2825, 0.9181]),\n",
      "indices=tensor([1, 1]))\n",
      "torch.return_types.max(\n",
      "values=tensor([0.3247, 0.9181]),\n",
      "indices=tensor([1, 1]))\n"
     ]
    }
   ],
   "source": [
    "a15=torch.max(a)\n",
    "a16=torch.max(a,dim=0)\n",
    "a17=torch.max(a,dim=1)\n",
    "print(a15)\n",
    "print(a16)\n",
    "print(a17)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7dbecd7e-568c-4c49-8e8c-305ee7ea64ed",
   "metadata": {},
   "source": [
    "#### 设置参数keepdim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "f55fd5cd-1e54-4d32-85a4-814289a06ec4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "torch.return_types.max(\n",
      "values=tensor([[0.2825, 0.9181]]),\n",
      "indices=tensor([[1, 1]]))\n",
      "torch.return_types.max(\n",
      "values=tensor([[0.3247],\n",
      "        [0.9181]]),\n",
      "indices=tensor([[1],\n",
      "        [1]]))\n"
     ]
    }
   ],
   "source": [
    "a18=torch.max(a,0,keepdim=True)\n",
    "a19=torch.max(a,1,keepdim=True)\n",
    "print(a18)\n",
    "print(a19)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5fa3435e-eb27-491a-b0c9-b1644030aa1a",
   "metadata": {},
   "source": [
    "### 5．最小值"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "70681acb-f7a4-4a44-8298-47661f2d1bef",
   "metadata": {},
   "source": [
    "#### torch.min()函数返回最小值，参数与torch.max()函数类似，也有两种用法，代码如下："
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3624830e-8b7f-444f-9261-741a05532e0e",
   "metadata": {},
   "source": [
    "#### 设置参数input和dim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "7b8af0af-9718-4c29-b89b-6880e40a05dd",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(0.1586)\n",
      "torch.return_types.min(\n",
      "values=tensor([0.1586, 0.3247]),\n",
      "indices=tensor([0, 0]))\n",
      "torch.return_types.min(\n",
      "values=tensor([0.1586, 0.2825]),\n",
      "indices=tensor([0, 0]))\n"
     ]
    }
   ],
   "source": [
    "a20=torch.min(a)\n",
    "a21=torch.min(a,dim=0)\n",
    "a22=torch.min(a,dim=1)\n",
    "print(a20)\n",
    "print(a21)\n",
    "print(a22)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d4a3ce64-c8ed-4fd9-8d26-8f62e842084e",
   "metadata": {},
   "source": [
    "#### 设置参数keepdim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "71a8792e-dcd8-4480-8e35-82d51eb8eae4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "torch.return_types.min(\n",
      "values=tensor([[0.1586, 0.3247]]),\n",
      "indices=tensor([[0, 0]]))\n",
      "torch.return_types.min(\n",
      "values=tensor([[0.1586],\n",
      "        [0.2825]]),\n",
      "indices=tensor([[0],\n",
      "        [0]]))\n"
     ]
    }
   ],
   "source": [
    "a23=torch.min(a,0,keepdim=True)\n",
    "a24=torch.min(a,1,keepdim=True)\n",
    "print(a23)\n",
    "print(a24)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "507de031-2468-4fa0-8093-b45a272f1289",
   "metadata": {},
   "source": [
    "### 6．中位数"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "acb7198b-7a1d-43e2-9abf-faa24ecafe90",
   "metadata": {},
   "source": [
    "#### torch.median()：返回中位数，参数与torch.max()函数类似，也有两种用法，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "db2f7e71-5859-431d-9729-ebafb6dd51b4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(0.2825)\n",
      "torch.return_types.median(\n",
      "values=tensor([0.1586, 0.2825]),\n",
      "indices=tensor([0, 0]))\n"
     ]
    }
   ],
   "source": [
    "print(torch.median(a))\n",
    "print(torch.median(a,1))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7b017149-65d8-4376-aa01-c0b8c02f83ea",
   "metadata": {},
   "source": [
    "#### 设置参数keepdim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "38f73712-665e-41f9-a456-4e1033f9fbf6",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "torch.return_types.median(\n",
       "values=tensor([[0.1586],\n",
       "        [0.2825]]),\n",
       "indices=tensor([[0],\n",
       "        [0]]))"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.median(a,1,keepdim=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b9363536-4864-4bb9-9e4f-fad75c2bb1ea",
   "metadata": {},
   "source": [
    "### 7．众数"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c4138def-1a7b-4c37-bbe9-37052adbfee1",
   "metadata": {},
   "source": [
    "#### torch.mode()：返回众数，参数与torch.max()函数类似，也有两种用法，代码如下："
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d4446916-6c0e-4eab-b9b5-ca4b66c5b28b",
   "metadata": {},
   "source": [
    "#### 设置参数input和dim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "a3daf6a0-aa6f-4422-a9b8-1157a15721b3",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "torch.return_types.mode(\n",
      "values=tensor([0.1586, 0.2825]),\n",
      "indices=tensor([0, 0]))\n",
      "torch.return_types.mode(\n",
      "values=tensor([0.1586, 0.3247]),\n",
      "indices=tensor([0, 0]))\n"
     ]
    }
   ],
   "source": [
    "print(torch.mode(a))\n",
    "print(torch.mode(a,0))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "047eb2ad-1afa-45d8-9435-088d97434104",
   "metadata": {},
   "source": [
    "#### 设置参数keepdim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "19094589-c154-4fb0-80da-ad597b05605f",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "torch.return_types.mode(\n",
       "values=tensor([[0.1586],\n",
       "        [0.2825]]),\n",
       "indices=tensor([[0],\n",
       "        [0]]))"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.mode(a,1,keepdim=True) "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9f4003ed-88f3-42bb-8760-4dcbe2444274",
   "metadata": {},
   "source": [
    "### 8．方差"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "588287d5-b028-4d17-9819-8b4fc2bd5563",
   "metadata": {},
   "source": [
    "#### torch.var()：返回输入张量中所有元素的方差，也有两种用法，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "bcc42ccf-e80d-4b2b-bcd6-e2fdf8a9ff38",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([0.0138, 0.2020])"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.var(a,1)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "906815cd-8a90-45e8-a81a-ea296b57ae5c",
   "metadata": {},
   "source": [
    "#### 设置参数unbiased，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "7e6d1f36-ffb2-484b-b8b8-4d6faa191c86",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([0.0069, 0.1010])"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.var(a,1,unbiased=False)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0e7e02bd-f8ae-4fde-9ece-c021481639e2",
   "metadata": {},
   "source": [
    "#### 设置参数keepdim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "7d5477e0-7d42-4cf8-bbca-233a1fd5bbe4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[0.0069],\n",
       "        [0.1010]])"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.var(a,1,unbiased=False,keepdim=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "97ac4398-d70a-447a-8cf0-f9b7ab3ff54b",
   "metadata": {},
   "source": [
    "### 9．标准差"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3b7458d0-2c28-404a-9012-c445f874364f",
   "metadata": {},
   "source": [
    "#### torch.std()：返回输入张量中所有元素的标准差，参数与torch.var()函数类似，也有两种用法，代码如下："
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8a87a575-4ae5-4d52-a99e-27110ccf44cd",
   "metadata": {},
   "source": [
    "#### 设置参数input和dim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "e6d4ddfc-2e66-406b-9349-9b905fdf2276",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([0.1174, 0.4494])"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.std(a,1)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d0aa4290-d564-4d62-9c5d-bd5598673cad",
   "metadata": {},
   "source": [
    "#### 设置参数unbiased，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "id": "fefdd3c5-516f-4a87-a41b-53a9a354520b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([0.0830, 0.3178])"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.std(a,1,unbiased=False)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "332c7678-26e9-48e4-b901-d78909b86275",
   "metadata": {},
   "source": [
    "#### 设置参数keepdim，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "id": "27c2b47c-6d76-4a83-a281-e28441526fc7",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[0.0830],\n",
       "        [0.3178]])"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.std(a,1,unbiased=False,keepdim=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d877d463-c86f-4acf-817e-d46ae5cc16ff",
   "metadata": {},
   "source": [
    "## 2.4　矩阵基础"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c35d0bbe-4994-485f-824c-782ef1a9063c",
   "metadata": {},
   "source": [
    "### 2.4.2　PyTorch矩阵运算"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "41f04fc5-db81-475f-b549-542ed917f46f",
   "metadata": {},
   "source": [
    "#### 1．矩阵的加法"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "fc14cf18-94a2-4a9b-8654-9cd053e61f41",
   "metadata": {},
   "source": [
    "#### 首先创建两个张量，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "id": "cb21098a-b3ba-4b4e-a12d-d2486ede9fc3",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[0.9280, 0.0326, 0.6532, 0.8155],\n",
      "        [0.3355, 0.0518, 0.0210, 0.3272],\n",
      "        [0.8282, 0.0620, 0.0604, 0.9638]])\n",
      "tensor([0.4250, 0.0120, 0.0721, 0.7464])\n"
     ]
    }
   ],
   "source": [
    "import torch\n",
    "a=torch.rand(3,4)\n",
    "b=torch.rand(4)\n",
    "print(a)\n",
    "print(b)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "47012e21-f6fc-48d3-ab00-92c8d32d709b",
   "metadata": {},
   "source": [
    "### 方法1：使用+运算符实现加法。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "id": "21e8b78f-4cb1-4c7f-b4b2-7b121e2ad377",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[1.3530, 0.0446, 0.7252, 1.5619],\n",
      "        [0.7605, 0.0638, 0.0931, 1.0736],\n",
      "        [1.2532, 0.0740, 0.1325, 1.7102]])\n"
     ]
    }
   ],
   "source": [
    "print(a+b)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4192d1b2-8147-480a-a2ae-1b4b3e5301d6",
   "metadata": {},
   "source": [
    "### 方法2：使用函数torch.add()实现加法。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "id": "c7695804-8e77-464b-848d-c8f47072fc8d",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[1.3530, 0.0446, 0.7252, 1.5619],\n",
      "        [0.7605, 0.0638, 0.0931, 1.0736],\n",
      "        [1.2532, 0.0740, 0.1325, 1.7102]])\n"
     ]
    }
   ],
   "source": [
    "print(torch.add(a,b))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "057d0c1d-f3e2-444c-968d-d9a489618d13",
   "metadata": {},
   "source": [
    "### 方法3：输出到一个向量。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "id": "d6287c38-bb49-4cb3-9401-391fa055fccb",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[1.3530, 0.0446, 0.7252, 1.5619],\n",
      "        [0.7605, 0.0638, 0.0931, 1.0736],\n",
      "        [1.2532, 0.0740, 0.1325, 1.7102]])\n"
     ]
    }
   ],
   "source": [
    "c=torch.Tensor(3,4)\n",
    "print(torch.add(a,b,out=c))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f6402dba-d1ca-4570-96c7-c950ea62ec31",
   "metadata": {},
   "source": [
    "### 方法4：把一个张量加到另一个张量上。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "id": "0f2e6c38-72f1-46be-83d1-96506b6b348d",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[1.3530, 0.0446, 0.7252, 1.5619],\n",
      "        [0.7605, 0.0638, 0.0931, 1.0736],\n",
      "        [1.2532, 0.0740, 0.1325, 1.7102]])\n"
     ]
    }
   ],
   "source": [
    "print(b.add(a))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "36ee861a-264b-4d96-8498-98ee0e1bef8b",
   "metadata": {},
   "source": [
    "### 2．矩阵的减法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "id": "dbe3f5e3-8131-4863-b13e-950299e4c4ed",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[ 0.5030,  0.0206,  0.5811,  0.0691],\n",
      "        [-0.0895,  0.0398, -0.0511, -0.4192],\n",
      "        [ 0.4032,  0.0501, -0.0117,  0.2174]])\n"
     ]
    }
   ],
   "source": [
    "print(a-b)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "id": "3db79402-1109-4816-9026-4bb4274bd602",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[ 0.5030,  0.0206,  0.5811,  0.0691],\n",
      "        [-0.0895,  0.0398, -0.0511, -0.4192],\n",
      "        [ 0.4032,  0.0501, -0.0117,  0.2174]])\n"
     ]
    }
   ],
   "source": [
    "print(torch.sub(a,b))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "id": "29991cc8-6741-47bc-880d-15ecd4698a4f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[ 0.5030,  0.0206,  0.5811,  0.0691],\n",
      "        [-0.0895,  0.0398, -0.0511, -0.4192],\n",
      "        [ 0.4032,  0.0501, -0.0117,  0.2174]])\n"
     ]
    }
   ],
   "source": [
    "c=torch.Tensor(3,4)\n",
    "print(torch.sub(a,b,out=c))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "id": "a7d33786-562f-47bb-95a4-6fedaa7a9b5b",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[-0.5030, -0.0206, -0.5811, -0.0691],\n",
      "        [ 0.0895, -0.0398,  0.0511,  0.4192],\n",
      "        [-0.4032, -0.0501,  0.0117, -0.2174]])\n"
     ]
    }
   ],
   "source": [
    "print(b.sub(a))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "dcf6cb58-bedd-46c0-812e-5c325226af3c",
   "metadata": {},
   "source": [
    "### 3．矩阵的乘法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "id": "e7ebb8c5-29b6-429f-82d3-995103f644f3",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[3.9443e-01, 3.9089e-04, 4.7075e-02, 6.0872e-01],\n",
      "        [1.4260e-01, 6.2058e-04, 1.5143e-03, 2.4423e-01],\n",
      "        [3.5202e-01, 7.4352e-04, 4.3523e-03, 7.1936e-01]])\n"
     ]
    }
   ],
   "source": [
    "print(a*b)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "id": "80e04ac0-f1b0-41e6-8be1-e88f72d64131",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[3.9443e-01, 3.9089e-04, 4.7075e-02, 6.0872e-01],\n",
      "        [1.4260e-01, 6.2058e-04, 1.5143e-03, 2.4423e-01],\n",
      "        [3.5202e-01, 7.4352e-04, 4.3523e-03, 7.1936e-01]])\n"
     ]
    }
   ],
   "source": [
    "print(torch.mul(a,b))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "id": "cc7f1389-556f-4809-85fd-fc46cce38351",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[3.9443e-01, 3.9089e-04, 4.7075e-02, 6.0872e-01],\n",
      "        [1.4260e-01, 6.2058e-04, 1.5143e-03, 2.4423e-01],\n",
      "        [3.5202e-01, 7.4352e-04, 4.3523e-03, 7.1936e-01]])\n"
     ]
    }
   ],
   "source": [
    "c=torch.Tensor(3,4)\n",
    "print(torch.mul(a,b,out=c))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "id": "c5043102-b327-4152-8ae2-05cda95d0ef1",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[3.9443e-01, 3.9089e-04, 4.7075e-02, 6.0872e-01],\n",
      "        [1.4260e-01, 6.2058e-04, 1.5143e-03, 2.4423e-01],\n",
      "        [3.5202e-01, 7.4352e-04, 4.3523e-03, 7.1936e-01]])\n"
     ]
    }
   ],
   "source": [
    "print(b.mul(a))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ec8e22a6-9afb-468f-ab1f-c17124ab166b",
   "metadata": {},
   "source": [
    "### 4．矩阵的除法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "id": "b1789cd5-20da-40f8-87d0-99ce29aaa41e",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[2.1834, 2.7213, 9.0624, 1.0926],\n",
      "        [0.7894, 4.3204, 0.2915, 0.4384],\n",
      "        [1.9486, 5.1763, 0.8379, 1.2912]])\n"
     ]
    }
   ],
   "source": [
    "print(a/b)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "id": "11989451-4f9f-44d5-a2eb-f84ed5ace7e3",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[2.1834, 2.7213, 9.0624, 1.0926],\n",
      "        [0.7894, 4.3204, 0.2915, 0.4384],\n",
      "        [1.9486, 5.1763, 0.8379, 1.2912]])\n"
     ]
    }
   ],
   "source": [
    "print(torch.div(a,b))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "id": "20cda54b-e8bb-4b87-8a23-c09700a06881",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[2.1834, 2.7213, 9.0624, 1.0926],\n",
      "        [0.7894, 4.3204, 0.2915, 0.4384],\n",
      "        [1.9486, 5.1763, 0.8379, 1.2912]])\n"
     ]
    }
   ],
   "source": [
    "c=torch.Tensor(3,4)\n",
    "print(torch.div(a,b,out=c))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "id": "b6fe120c-791f-4ac7-a0c7-e66beef02c62",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[2.1834, 2.7213, 9.0624, 1.0926],\n",
      "        [0.7894, 4.3204, 0.2915, 0.4384],\n",
      "        [1.9486, 5.1763, 0.8379, 1.2912]])\n"
     ]
    }
   ],
   "source": [
    "print(a.div(b))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b7bd1ae4-7ef0-4350-9cdc-66b054bb0c3a",
   "metadata": {},
   "source": [
    "### 5．矩阵的幂运算"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "id": "1c629e78-4642-43a3-be52-7ccd57900378",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[8.6119e-01, 1.0637e-03, 4.2662e-01, 6.6509e-01],\n",
      "        [1.1257e-01, 2.6811e-03, 4.4146e-04, 1.0707e-01],\n",
      "        [6.8594e-01, 3.8487e-03, 3.6466e-03, 9.2884e-01]])\n"
     ]
    }
   ],
   "source": [
    "print(a.pow(2))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "id": "9f9b712c-0405-44da-9ee0-a52f967b3194",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[8.6119e-01, 1.0637e-03, 4.2662e-01, 6.6509e-01],\n",
      "        [1.1257e-01, 2.6811e-03, 4.4146e-04, 1.0707e-01],\n",
      "        [6.8594e-01, 3.8487e-03, 3.6466e-03, 9.2884e-01]])\n"
     ]
    }
   ],
   "source": [
    "print(a**2)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d5380aef-0b2f-4dab-b04b-c992a9508840",
   "metadata": {},
   "source": [
    "### 6．矩阵的平方根"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "id": "c235ed1e-ab22-4b4b-ad14-5b3d8afec528",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[0.9633, 0.1806, 0.8082, 0.9031],\n",
      "        [0.5792, 0.2276, 0.1450, 0.5720],\n",
      "        [0.9101, 0.2491, 0.2457, 0.9817]])\n"
     ]
    }
   ],
   "source": [
    "print(a.sqrt())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "id": "2828af28-2b80-4f8d-90b6-79e1e23d5f1d",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[1.0381, 5.5372, 1.2373, 1.1073],\n",
      "        [1.7264, 4.3946, 6.8989, 1.7482],\n",
      "        [1.0988, 4.0149, 4.0694, 1.0186]])\n"
     ]
    }
   ],
   "source": [
    "print(a.rsqrt())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3e02f56f-e1f1-43c8-8e37-8b2cada7102a",
   "metadata": {},
   "source": [
    "### 7．矩阵的对数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "id": "d303fbf7-99e2-43c9-91a4-b40ac1b7ac5b",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[-0.1078, -4.9383, -0.6145, -0.2942],\n",
      "        [-1.5755, -4.2715, -5.5727, -1.6117],\n",
      "        [-0.2719, -4.0107, -4.0496, -0.0532]])\n"
     ]
    }
   ],
   "source": [
    "print(torch.log2(a))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "id": "625e3427-d553-49f2-b656-56d58782b254",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor([[-0.0325, -1.4866, -0.1850, -0.0886],\n",
      "        [-0.4743, -1.2858, -1.6776, -0.4852],\n",
      "        [-0.0819, -1.2073, -1.2191, -0.0160]])\n"
     ]
    }
   ],
   "source": [
    "print(torch.log10(a))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "702270d4-490f-4a8d-a44a-51dbbdd3cc91",
   "metadata": {},
   "source": [
    "### 8．其他主要运算"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "id": "1a8c9e2e-2044-4872-8bb3-d929996745a5",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(3.)\n"
     ]
    }
   ],
   "source": [
    "a=torch.tensor(3.1415926)\n",
    "print(a.floor())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "id": "92526548-44d6-476a-be48-740f61f2e806",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(4.)\n"
     ]
    }
   ],
   "source": [
    "print(a.ceil())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "id": "794e8302-ac59-4c93-8721-9d1e20d9ffaa",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(3.)\n"
     ]
    }
   ],
   "source": [
    "print(a.round())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "id": "0de84354-4739-4142-8ce5-f77e358d8a1c",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(3.)\n"
     ]
    }
   ],
   "source": [
    "print(a.trunc())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "id": "17937e47-650c-4406-912f-31f5ebe57606",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(0.1416)\n"
     ]
    }
   ],
   "source": [
    "print(a.frac())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "fd0aab1d-69e8-4e30-b1a0-dca8e797226c",
   "metadata": {},
   "source": [
    "## 2.5　动手练习：拟合余弦函数曲线"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6d7f5bda-c046-4454-b93a-747ea1913075",
   "metadata": {},
   "source": [
    "### 1.导入相关第三方库，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "20a1d646-49ec-495f-9dca-58391410e263",
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "import torch.nn as nn\n",
    "from torch.utils.data import DataLoader\n",
    "from torch.utils.data import TensorDataset\n",
    "import numpy as np\n",
    "import matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "matplotlib.rcParams[\"font.sans-serif\"]=[\"SimHei\"]\n",
    "matplotlib.rcParams['axes.unicode_minus']=False"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "af18b7b3-9a33-4b77-9ed0-24a52c74f77b",
   "metadata": {},
   "source": [
    "### 2.准备拟合数据，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "5208e782-b1ca-402e-84de-4cd224d61fa6",
   "metadata": {},
   "outputs": [],
   "source": [
    "x=np.linspace(-2*np.pi,2*np.pi,400)\n",
    "y=np.cos(x)\n",
    "X=np.expand_dims(x,axis=1)\n",
    "Y=y.reshape(400,-1)\n",
    "dataset=TensorDataset(torch.tensor(X,dtype=torch.float),torch.tensor(Y,dtype=torch.float))\n",
    "dataloader=DataLoader(dataset,batch_size=10,shuffle=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "dc4ead35-2fc3-4e37-bdb7-2314fa769223",
   "metadata": {},
   "source": [
    "### 3.设置神经网络，这里就用一个简单的线性结构，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "123bc8fd-df13-4116-95fb-a91d8ebb1a73",
   "metadata": {},
   "outputs": [],
   "source": [
    "class Net(nn.Module):\n",
    "    def __init__(self):\n",
    "        super(Net,self).__init__()\n",
    "        self.net=nn.Sequential(\n",
    "            nn.Linear(in_features=1,out_features=10),nn.ReLU(),\n",
    "            nn.Linear(10,100),nn.ReLU(),\n",
    "            nn.Linear(100,10),nn.ReLU(),\n",
    "            nn.Linear(10,1)\n",
    "        )\n",
    "    def forward(self,input:torch.FloatTensor):\n",
    "        return self.net(input)\n",
    "net=Net()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8238f2c0-c482-4421-b4c0-68c27992f50b",
   "metadata": {},
   "source": [
    "### 4.设置优化器和损失函数，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "74f33f9f-1279-4ff7-8676-dab6122cd7ed",
   "metadata": {},
   "outputs": [],
   "source": [
    "optim=torch.optim.Adam(Net.parameters(net),lr=0.001)\n",
    "Loss=nn.MSELoss()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "07429922-3b4d-4ac9-b923-b30a1e290ca3",
   "metadata": {},
   "source": [
    "### 5.开始训练模型并进行预测，训练100次，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "0d65778c-4013-4bae-b6fa-29919b4ab544",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "训练步骤：10,模型损失：0.041861824691295624\n",
      "训练步骤：20,模型损失：0.002382035134360194\n",
      "训练步骤：30,模型损失：0.0014666655333712697\n",
      "训练步骤：40,模型损失：0.0005036083748564124\n",
      "训练步骤：50,模型损失：0.00034290814073756337\n",
      "训练步骤：60,模型损失：0.0004255297244526446\n",
      "训练步骤：70,模型损失：0.0014430489391088486\n",
      "训练步骤：80,模型损失：0.0001289953652303666\n",
      "训练步骤：90,模型损失：7.313366222660989e-05\n",
      "训练步骤：100,模型损失：0.000693823560141027\n"
     ]
    }
   ],
   "source": [
    "for epoch in range(100):\n",
    "    loss=None\n",
    "    for batch_x,batch_y in dataloader:\n",
    "        y_predict=net(batch_x)\n",
    "        loss=Loss(y_predict,batch_y)\n",
    "        optim.zero_grad()\n",
    "        loss.backward()\n",
    "        optim.step()\n",
    "    if (epoch+1)%10==0:\n",
    "        print(\"训练步骤：{0},模型损失：{1}\".format(epoch+1,loss.item()))\n",
    "predict=net(torch.tensor(X,dtype=torch.float))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e915c3b8-b29f-4f7f-ac5d-cad73f748f36",
   "metadata": {},
   "source": [
    "### 6.绘制预测值和真实值之间的折线图，代码如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "49e390a5-d2f4-48df-a257-d7936840028e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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WgUEgYEDB2revHlav3699u7dq7Zt25Z73pEjR/TOO+9IcjX+6tKlS12GCQSV//znP9U6z70Vf/To0brxxhslVW/3GgCX5cuXa8SIEXI4HGrRooVWrVqlxMTEQIcF1Fu9evWSJJmmqS+//FKXX355uedlZmZq586dkqTTTjutzuIDgt3Bgwd12WWXaceOHZKkWbNm6YYbbghwVEDwmjRpkkaNGlXleU8//bT+/e9/KzExUQsWLKiDyIDgN3DgQE2fPl2StHjxYj300EMVnjtv3jzPc0oKBgcSM0AQuPHGGzVv3jwVFRVp+PDh+vDDD9WkSZMS55w4cUJDhw71rKycOHFiACIFgkfxxnjV0b59+xpfAzR2CxYs0E033SSn06m4uDitWrWqxKovAGVddNFFslqtstlsWrp0aYWJmbVr13qed+/evY6iA4Lbvn371K9fP/3888+SpL/+9a/MmwAfde3aVV27dq3yPHcyJiIignkVUE19+vRRcnKy0tPT9eijjyolJUUXXnhhmfPmzJmjhQsXSpLOOussXXzxxXUdKrxAYgYIAn379tUtt9yi1157TevXr1e3bt106623eibhW7Zs0auvvupp7tWjRw/dcccdAYwYANDYbdu2Tbfccoun5vjtt9+uQ4cOadWqVRVec+aZZ+rUU0+tqxCBeik2NlZXXXWVVq5cqcWLF2vKlClKTk4ucY5pmnrxxRc9Xw8cOLCuwwSC0rBhwzxJmXPPPVfnn39+pb+XmjVr5tnFBgBAXbNYLHr55Zc1cOBA5efn65JLLtHIkSM1cOBAxcfH69dff9XSpUu1bt06SVJ4eLhmz55NL88gYZimaQY6CABVczgcevDBB/X88897PuQqT7du3bRu3Tq1bNmyDqMDGi53Q8qpU6fqkUceCWwwQBC544479NJLL9Xomtdff11jxoypnYCAIPL55597VkOeddZZWrNmjVq0aOF5fdq0aZ7fSWeffba+/fbbAEQJBJfNmzfXOMnSr18/ffLJJ7UTENDIjBkzRm+++aZOO+007dmzJ9DhAEFl1apVuvnmm/Xbb79VeE54eLgWLVqk6667rg4jgy9InwFBIiQkRLNmzdIPP/ygBx98UH/84x8VHx+vkJAQxcbGqlevXnrqqae0efNmkjIAgIBz974AUHN9+/bVyJEjJUnfffedunXrpilTpmjWrFm66KKLPEkZi8WiZ599NoCRAsGD30sAgGA1aNAgpaen66WXXtLll1+uU089VVarVeHh4erQoYPGjRunLVu2kJQJMuyYAQAAAIB6prCwUKNHj9bbb79d7usWi0UvvPAC5WsBAACAIMSOGQAAAACoZ8LDw7Vs2TItXbpUPXr08Bw3DEN9+/bVxx9/TFIGAAAACFLsmAEAAACAei4jI0MZGRk69dRT1bx580CHAwAAAMAHJGYAAAAAAAAAAADqCKXMAAAAAAAAAAAA6giJGQAAAAAAAAAAgDpCYgYAAAAAAAAAAKCOkJgBAAAAAAAAAACoIyRmAAAAAAAAAAAA6giJGQAAAAAAAAAAgDpCYgYAAAAAAAAAAKCOkJgBAAAAAAAAAACoIyRmAAAAAAAAAAAA6giJGQAAAAAAAAAAgDpCYgYAAAAAAAAAAKCOkJgBAAAAAAAAAACoIyRmAAAAAAAAAAAA6giJGQAAAAAAAAAAgDpCYgYAAAAAAAAAAKCOkJgBAAAAAAAAAACoIyRmAAAAAAAAAAAA6giJGQAAAACoJ37++Wc1adJEhmEoISFBmZmZZc4pKirSH/7wBxmGoZCQEH388ccBiBQAAACAt0jMAAAAAEA90b59e82ZM0eSdPjwYd19991lznn88ce1bds2SdKkSZN08cUX12mMAAAAAHxjmKZpBjoIAAAAAMBJo0eP1oIFCyRJ7733nq688kpJ0rZt23TOOeeoqKhIvXr10hdffCGr1RrIUAEAAADUEIkZAAAAAKhnsrOz1b17d/3888869dRT9cMPPygmJkYpKSnauHGjYmNjtWXLFnXo0CHQoQIAAACoodBABwAAAAAAKCk2NlaLFi3SBRdcoP379+svf/mLOnfurI0bN0qS5syZQ1IGAAAACFLsmAEAAACAeurxxx/XlClTZBiGwsPDVVBQoBEjRmjhwoWBDg0AAACAl0jMAAAAAEA95XQ6ddFFF+nzzz+XJLVt21bff/+94uLiAhwZAAAAAG9ZAh0AAAAAAKB8x44d0y+//OL5OisrS/v27QtgRAAAAAB8RWIGAAAAAOoh0zQ1ZswY7d27V2FhYWrWrJny8vI0ZMgQ5eXlBTo8AAAAAF4iMQMAAAAA9dDMmTP13nvvSZKmT5+u1157TZL0ww8/6Pbbbw9kaAAAAAB8QI8ZAAAAAKhnvvrqK1144YWy2Wy66KKLtHbtWlksFo0fP17z5s2TJL3++usaM2ZMYAMFAAAAUGMkZgAAAACgHjly5Ih69OihvXv3Kj4+Xlu3blXbtm0lSbm5uerevbt27dqlqKgobd68WV27dg1wxAAAAABqglJmAAAAAFBPFO8rI0lz5szxJGUkKTo6WgsWLFBoaCj9ZgAAAIAgRWIGAAAAAOqJ4n1lhg8frhEjRpQ557zzztPDDz8siX4zAAAAQDCilBkAAAAAAAAAAEAdYccMAAAAAAAAAABAHSExAwAAAAAAAAAAUEdIzAAAAAAAAAAAANQREjMAAAAAAAAAAAB1hMQMAAAAAAAAAABAHSExAwAAAAAAAAAAUEdIzAAAAAAAAAAAANQREjMAAAAAAAAAAAB1hMQMAAAAAAAAAABAHSExAwAAAAAAAAAAUEdIzAAAAAAAAAAAANQREjMAAAAAAAAAAAB1hMQMAAAAAAAAAABAHSExAwAAAAAAAAAAUEdIzAAAAAAAAAAAANQREjMAAAAAAAAAAAB1hMQMAAAAAAAAAABAHSExAwAAAAAAAAAAUEdIzAAAAAAAAAAAANSR/wcSmCdnivBGZwAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 1920x1120 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(12,7),dpi=160)\n",
    "plt.plot(x,y,label=\"实际值\",marker=\"X\")\n",
    "plt.plot(x,predict.detach().numpy(),label=\"预测值\",marker=\"o\")\n",
    "plt.xlabel(\"x\",size=15)\n",
    "plt.ylabel(\"cos(x)\",size=15)\n",
    "plt.xticks(size=15)\n",
    "plt.yticks(size=15)\n",
    "plt.legend(fontsize=15)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "32d8fbc9-6a2b-48c7-9a1e-8a7bce859ff9",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
